Skip to content

Fix CI tests#17268

Open
tobiasKaminsky wants to merge 23 commits into
masterfrom
ciTests
Open

Fix CI tests#17268
tobiasKaminsky wants to merge 23 commits into
masterfrom
ciTests

Conversation

@tobiasKaminsky

@tobiasKaminsky tobiasKaminsky commented Jul 1, 2026

Copy link
Copy Markdown
Member

🖼️ Screenshots

🏚️ Before 🏡 After
B A

🏁 Checklist

  • ⛑️ Tests (unit and/or integration) are included or not needed
  • 🔙 Backport requests are created or not needed: /backport to stable-xx.x
  • 📅 Milestone is set
  • 🌸 PR title is meaningful (if it should be in the changelog: is it meaningful to users?)

🤖 AI (if applicable)

  • The content of this PR was partly or fully generated using AI

@github-actions

github-actions Bot commented Jul 1, 2026

Copy link
Copy Markdown

APK file: https://github.com/nextcloud/android/actions/runs/28518232409/artifacts/8010589943
To test this change/fix you can simply download above APK file and install and test it in parallel to your existing Nextcloud app.
qrcode (please click on link to get QR code displayed)

@github-actions

github-actions Bot commented Jul 3, 2026

Copy link
Copy Markdown

APK file: https://github.com/nextcloud/android/actions/runs/28661618074/artifacts/8067298084
To test this change/fix you can simply download above APK file and install and test it in parallel to your existing Nextcloud app.
qrcode (please click on link to get QR code displayed)

@github-actions

github-actions Bot commented Jul 3, 2026

Copy link
Copy Markdown

APK file: https://github.com/nextcloud/android/actions/runs/28662656937/artifacts/8067462809
To test this change/fix you can simply download above APK file and install and test it in parallel to your existing Nextcloud app.
qrcode (please click on link to get QR code displayed)

@github-actions

github-actions Bot commented Jul 3, 2026

Copy link
Copy Markdown

APK file: https://github.com/nextcloud/android/actions/runs/28663957520/artifacts/8067974908
To test this change/fix you can simply download above APK file and install and test it in parallel to your existing Nextcloud app.
qrcode (please click on link to get QR code displayed)

@alperozturk96 alperozturk96 self-assigned this Jul 6, 2026
@alperozturk96

This comment was marked as resolved.

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown

APK file: https://github.com/nextcloud/android/actions/runs/29026433190/artifacts/8203940970
To test this change/fix you can simply download above APK file and install and test it in parallel to your existing Nextcloud app.
qrcode (please click on link to get QR code displayed)

@alperozturk96 alperozturk96 force-pushed the ciTests branch 3 times, most recently from e09a540 to 0b22581 Compare July 10, 2026 11:06
@github-actions

Copy link
Copy Markdown

APK file: https://github.com/nextcloud/android/actions/runs/29089105595/artifacts/8226198821
To test this change/fix you can simply download above APK file and install and test it in parallel to your existing Nextcloud app.
qrcode (please click on link to get QR code displayed)

@github-actions

Copy link
Copy Markdown

APK file: https://github.com/nextcloud/android/actions/runs/29096682236/artifacts/8229192783
To test this change/fix you can simply download above APK file and install and test it in parallel to your existing Nextcloud app.
qrcode (please click on link to get QR code displayed)

@github-actions

Copy link
Copy Markdown

APK file: https://github.com/nextcloud/android/actions/runs/29097208820/artifacts/8229409280
To test this change/fix you can simply download above APK file and install and test it in parallel to your existing Nextcloud app.
qrcode (please click on link to get QR code displayed)

@github-actions

Copy link
Copy Markdown

APK file: https://github.com/nextcloud/android/actions/runs/29098007123/artifacts/8229815324
To test this change/fix you can simply download above APK file and install and test it in parallel to your existing Nextcloud app.
qrcode (please click on link to get QR code displayed)

@github-actions

Copy link
Copy Markdown

APK file: https://github.com/nextcloud/android/actions/runs/29245846641/artifacts/8277680224
To test this change/fix you can simply download above APK file and install and test it in parallel to your existing Nextcloud app.
qrcode (please click on link to get QR code displayed)

@alperozturk96

Copy link
Copy Markdown
Collaborator

Seems like only following exception needs to be fixed:

androidx.test.espresso.base.RootViewPicker$RootViewWithoutFocusException: Waited for the root of the view hierarchy to have window focus and not request layout for 10 seconds. If you specified a non default root matcher, it may be picking a root that never takes focus. Root:

Screenshot 2026-07-13 at 16 27 40

tobiasKaminsky and others added 10 commits July 15, 2026 13:09
Signed-off-by: tobiasKaminsky <tobias@kaminsky.me>
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>

# Conflicts:
#	gradle/libs.versions.toml
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
@github-actions

Copy link
Copy Markdown

blue-Light-Screenshot test failed, but no output was generated. Maybe a preliminary stage failed.

@github-actions

Copy link
Copy Markdown

APK file: https://github.com/nextcloud/android/actions/runs/29411090727/artifacts/8344188847
To test this change/fix you can simply download above APK file and install and test it in parallel to your existing Nextcloud app.
qrcode (please click on link to get QR code displayed)

@github-actions

Copy link
Copy Markdown

Codacy

SpotBugs

CategoryBaseNew
Bad practice3232
Correctness6666
Dodgy code213213
Experimental11
Malicious code vulnerability22
Multithreaded correctness2929
Performance4141
Security1919
Total403403

@github-actions

Copy link
Copy Markdown

@andreBurnt

Copy link
Copy Markdown

Confirming the impact of this fix from the outside, plus one thing worth checking on API 33+.

That raw GrantPermissionRule.grant(WRITE_EXTERNAL_STORAGE, POST_NOTIFICATIONS) was the single largest failure cluster in the CI history I analyzed (2026-04-10 to 2026-07-09): 11,061 failure events across 414 test ids, which is 67% of all failure events in the window. Both CI emulator lanes (API 28 and 29) hit it on every run. I reproduced it on my own bench across three API levels (28 + 34 emulators, physical API 31), 31 iterations, zero passes. grantStorageAndNotification() gates POST_NOTIFICATIONS behind SDK_INT >= TIRAMISU, so it removes the dominant source of red in the suite.

One thing worth checking, on API 33+. The new rule still grants WRITE_EXTERNAL_STORAGE on both branches. The manifest caps that permission at maxSdkVersion="29" (still present on master), so on my API-34 bench the grant threw Package com.nextcloud.client has not requested permission WRITE_EXTERNAL_STORAGE. CI runs API 28/29, where the storage grant is valid, so this does not affect the lanes you're fixing. But if you ever add an API 33+ instrumentation lane, the storage half would throw there. A cheap guard: request WRITE_EXTERNAL_STORAGE only when SDK_INT <= 29.

Happy to share the repro loop and the cluster breakdown if useful.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants